/*--------------------------------------------------*/
/*VirtualSociety System ServiceModuleTemplate Main File*/
/*CreateBy SRPLab                */
/*CreateDate: 2011-3-29  */
/*--------------------------------------------------*/
#include "SRPSImgLibEngine_VSHeader.h"

/*++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*Function SImgLibClass Is Extracted From ScriptFile */
/*++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*++++++++++++++++++++++++++++++++++++++++++++++++++*/
#define SIMGLIBCLASS_OBJECT_DEPENDINDEX                                                              0x00000001
#define SIMGLIBCLASS_C_DECODEIMG_FUNCRETURN_DEPENDINDEX                                              0X00000002
#define SIMGLIBCLASS_C_DECODEIMG_FUNCPARAM_DEPENDINDEX                                               0X00000003
#define SIMGLIBCLASS_DECODEIMG_FUNCRETURN_DEPENDINDEX                                                0X00000004
#define SIMGLIBCLASS_DECODEIMG_FUNCPARAM_DEPENDINDEX                                                 0X00000005
#define SIMGLIBCLASS_C_CODEBMP_FUNCRETURN_DEPENDINDEX                                                0X00000006
#define SIMGLIBCLASS_C_CODEBMP_FUNCPARAM_DEPENDINDEX                                                 0X00000007
#define SIMGLIBCLASS_CODEBMP_FUNCRETURN_DEPENDINDEX                                                  0X00000008
#define SIMGLIBCLASS_CODEBMP_FUNCPARAM_DEPENDINDEX                                                   0X00000009
#define SIMGLIBCLASS_C_CODEJPG_FUNCRETURN_DEPENDINDEX                                                0X0000000A
#define SIMGLIBCLASS_C_CODEJPG_FUNCPARAM_DEPENDINDEX                                                 0X0000000B
#define SIMGLIBCLASS_CODEJPG_FUNCRETURN_DEPENDINDEX                                                  0X0000000C
#define SIMGLIBCLASS_CODEJPG_FUNCPARAM_DEPENDINDEX                                                   0X0000000D
#define SIMGLIBCLASS_C_CODEPNG_FUNCRETURN_DEPENDINDEX                                                0X0000000E
#define SIMGLIBCLASS_C_CODEPNG_FUNCPARAM_DEPENDINDEX                                                 0X0000000F
#define SIMGLIBCLASS_CODEPNG_FUNCRETURN_DEPENDINDEX                                                  0X00000010
#define SIMGLIBCLASS_CODEPNG_FUNCPARAM_DEPENDINDEX                                                   0X00000011
#define SIMGLIBCLASS_C_DECODEGIF_FUNCRETURN_DEPENDINDEX                                              0X00000012
#define SIMGLIBCLASS_C_DECODEGIF_FUNCPARAM_DEPENDINDEX                                               0X00000013
#define SIMGLIBCLASS_DECODEGIF_FUNCRETURN_DEPENDINDEX                                                0X00000014
#define SIMGLIBCLASS_DECODEGIF_FUNCPARAM_DEPENDINDEX                                                 0X00000015

VS_INT32 SRPCALLBACK SImgLibClass_QueryObjectInfo(VS_OBJECTMODULEINFO *VSObjectModuleInfo)
{
    VSObjectModuleInfo -> ObjectVersion = 0;
    VSObjectModuleInfo -> ObjectSubVersion = 0;
    VSObjectModuleInfo -> ObjcetBugFixVersion = 0;
    VSObjectModuleInfo -> VSVersion = 0;
    VSObjectModuleInfo -> VSSubVersion = 0;

    VSObjectModuleInfo -> CreateTime.wYear = 2011;
    VSObjectModuleInfo -> CreateTime.wMonth = 3;
    VSObjectModuleInfo -> CreateTime.wDay = 29;
    VSObjectModuleInfo -> UpdateTime.wYear = 2011;
    VSObjectModuleInfo -> UpdateTime.wMonth = 3;
    VSObjectModuleInfo -> UpdateTime.wDay = 29;

    strcpy( VSObjectModuleInfo -> AuthorityInfo, "" );
    strcpy( VSObjectModuleInfo -> LicenseInfo, "" );
    strcpy( VSObjectModuleInfo -> ExtendInfo, "" );

    return 0;
}

VS_INT32 SRPCALLBACK SImgLibClass_RequestRegisterObject()
{
    VS_DEPENDATTRIBUTE LocalDependAttribute[512];  /*---set a large number*/
    VS_INT32 DependIndexNumber,DependIndex[64];

    //------register object depend
    VSATTRDEPEND_SIMGLIBCLASS(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_OBJECT_DEPENDINDEX,VSOBJID_SImgLibClass,VSMODULEDEPEND_OBJECT,VSATTRDEPENDNUM_SIMGLIBCLASS,LocalDependAttribute);

    //------register function depend
    VSFUNCRETURNDEPEND_SIMGLIBCLASS_C_DECODEIMG(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_C_DECODEIMG_FUNCRETURN_DEPENDINDEX,VSFUNCID_SImgLibClass_C_DecodeImg,VSMODULEDEPEND_FUNCRETURN,VSFUNCRETURNDEPENDNUM_SIMGLIBCLASS_C_DECODEIMG,LocalDependAttribute);

    VSFUNCPARAMDEPEND_SIMGLIBCLASS_C_DECODEIMG(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_C_DECODEIMG_FUNCPARAM_DEPENDINDEX,VSFUNCID_SImgLibClass_C_DecodeImg,VSMODULEDEPEND_FUNCPARA,VSFUNCPARAMDEPENDNUM_SIMGLIBCLASS_C_DECODEIMG,LocalDependAttribute);

    VSFUNCRETURNDEPEND_SIMGLIBCLASS_DECODEIMG(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_DECODEIMG_FUNCRETURN_DEPENDINDEX,VSFUNCID_SImgLibClass_DecodeImg,VSMODULEDEPEND_FUNCRETURN,VSFUNCRETURNDEPENDNUM_SIMGLIBCLASS_DECODEIMG,LocalDependAttribute);

    VSFUNCPARAMDEPEND_SIMGLIBCLASS_DECODEIMG(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_DECODEIMG_FUNCPARAM_DEPENDINDEX,VSFUNCID_SImgLibClass_DecodeImg,VSMODULEDEPEND_FUNCPARA,VSFUNCPARAMDEPENDNUM_SIMGLIBCLASS_DECODEIMG,LocalDependAttribute);

    VSFUNCRETURNDEPEND_SIMGLIBCLASS_C_CODEBMP(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_C_CODEBMP_FUNCRETURN_DEPENDINDEX,VSFUNCID_SImgLibClass_C_CodeBMP,VSMODULEDEPEND_FUNCRETURN,VSFUNCRETURNDEPENDNUM_SIMGLIBCLASS_C_CODEBMP,LocalDependAttribute);

    VSFUNCPARAMDEPEND_SIMGLIBCLASS_C_CODEBMP(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_C_CODEBMP_FUNCPARAM_DEPENDINDEX,VSFUNCID_SImgLibClass_C_CodeBMP,VSMODULEDEPEND_FUNCPARA,VSFUNCPARAMDEPENDNUM_SIMGLIBCLASS_C_CODEBMP,LocalDependAttribute);

    VSFUNCRETURNDEPEND_SIMGLIBCLASS_CODEBMP(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_CODEBMP_FUNCRETURN_DEPENDINDEX,VSFUNCID_SImgLibClass_CodeBMP,VSMODULEDEPEND_FUNCRETURN,VSFUNCRETURNDEPENDNUM_SIMGLIBCLASS_CODEBMP,LocalDependAttribute);

    VSFUNCPARAMDEPEND_SIMGLIBCLASS_CODEBMP(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_CODEBMP_FUNCPARAM_DEPENDINDEX,VSFUNCID_SImgLibClass_CodeBMP,VSMODULEDEPEND_FUNCPARA,VSFUNCPARAMDEPENDNUM_SIMGLIBCLASS_CODEBMP,LocalDependAttribute);

    VSFUNCRETURNDEPEND_SIMGLIBCLASS_C_CODEJPG(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_C_CODEJPG_FUNCRETURN_DEPENDINDEX,VSFUNCID_SImgLibClass_C_CodeJPG,VSMODULEDEPEND_FUNCRETURN,VSFUNCRETURNDEPENDNUM_SIMGLIBCLASS_C_CODEJPG,LocalDependAttribute);

    VSFUNCPARAMDEPEND_SIMGLIBCLASS_C_CODEJPG(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_C_CODEJPG_FUNCPARAM_DEPENDINDEX,VSFUNCID_SImgLibClass_C_CodeJPG,VSMODULEDEPEND_FUNCPARA,VSFUNCPARAMDEPENDNUM_SIMGLIBCLASS_C_CODEJPG,LocalDependAttribute);

    VSFUNCRETURNDEPEND_SIMGLIBCLASS_CODEJPG(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_CODEJPG_FUNCRETURN_DEPENDINDEX,VSFUNCID_SImgLibClass_CodeJPG,VSMODULEDEPEND_FUNCRETURN,VSFUNCRETURNDEPENDNUM_SIMGLIBCLASS_CODEJPG,LocalDependAttribute);

    VSFUNCPARAMDEPEND_SIMGLIBCLASS_CODEJPG(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_CODEJPG_FUNCPARAM_DEPENDINDEX,VSFUNCID_SImgLibClass_CodeJPG,VSMODULEDEPEND_FUNCPARA,VSFUNCPARAMDEPENDNUM_SIMGLIBCLASS_CODEJPG,LocalDependAttribute);

    VSFUNCRETURNDEPEND_SIMGLIBCLASS_C_CODEPNG(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_C_CODEPNG_FUNCRETURN_DEPENDINDEX,VSFUNCID_SImgLibClass_C_CodePNG,VSMODULEDEPEND_FUNCRETURN,VSFUNCRETURNDEPENDNUM_SIMGLIBCLASS_C_CODEPNG,LocalDependAttribute);

    VSFUNCPARAMDEPEND_SIMGLIBCLASS_C_CODEPNG(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_C_CODEPNG_FUNCPARAM_DEPENDINDEX,VSFUNCID_SImgLibClass_C_CodePNG,VSMODULEDEPEND_FUNCPARA,VSFUNCPARAMDEPENDNUM_SIMGLIBCLASS_C_CODEPNG,LocalDependAttribute);

    VSFUNCRETURNDEPEND_SIMGLIBCLASS_CODEPNG(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_CODEPNG_FUNCRETURN_DEPENDINDEX,VSFUNCID_SImgLibClass_CodePNG,VSMODULEDEPEND_FUNCRETURN,VSFUNCRETURNDEPENDNUM_SIMGLIBCLASS_CODEPNG,LocalDependAttribute);

    VSFUNCPARAMDEPEND_SIMGLIBCLASS_CODEPNG(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_CODEPNG_FUNCPARAM_DEPENDINDEX,VSFUNCID_SImgLibClass_CodePNG,VSMODULEDEPEND_FUNCPARA,VSFUNCPARAMDEPENDNUM_SIMGLIBCLASS_CODEPNG,LocalDependAttribute);

    VSFUNCRETURNDEPEND_SIMGLIBCLASS_C_DECODEGIF(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_C_DECODEGIF_FUNCRETURN_DEPENDINDEX,VSFUNCID_SImgLibClass_C_DecodeGIF,VSMODULEDEPEND_FUNCRETURN,VSFUNCRETURNDEPENDNUM_SIMGLIBCLASS_C_DECODEGIF,LocalDependAttribute);

    VSFUNCPARAMDEPEND_SIMGLIBCLASS_C_DECODEGIF(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_C_DECODEGIF_FUNCPARAM_DEPENDINDEX,VSFUNCID_SImgLibClass_C_DecodeGIF,VSMODULEDEPEND_FUNCPARA,VSFUNCPARAMDEPENDNUM_SIMGLIBCLASS_C_DECODEGIF,LocalDependAttribute);

    VSFUNCRETURNDEPEND_SIMGLIBCLASS_DECODEGIF(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_DECODEGIF_FUNCRETURN_DEPENDINDEX,VSFUNCID_SImgLibClass_DecodeGIF,VSMODULEDEPEND_FUNCRETURN,VSFUNCRETURNDEPENDNUM_SIMGLIBCLASS_DECODEGIF,LocalDependAttribute);

    VSFUNCPARAMDEPEND_SIMGLIBCLASS_DECODEGIF(LocalDependAttribute);
    pSRP -> RegisterObjectDependency( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,SIMGLIBCLASS_DECODEGIF_FUNCPARAM_DEPENDINDEX,VSFUNCID_SImgLibClass_DecodeGIF,VSMODULEDEPEND_FUNCPARA,VSFUNCPARAMDEPENDNUM_SIMGLIBCLASS_DECODEGIF,LocalDependAttribute);

    //------object function
    DependIndexNumber = 3;
    DependIndex[0] = SIMGLIBCLASS_OBJECT_DEPENDINDEX;
    DependIndex[1] = SIMGLIBCLASS_C_DECODEIMG_FUNCRETURN_DEPENDINDEX;
    DependIndex[2] = SIMGLIBCLASS_C_DECODEIMG_FUNCPARAM_DEPENDINDEX;
    pSRP -> RegisterObjectFunction( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,VSFUNCID_SImgLibClass_C_DecodeImg,(void *)SImgLibClass_C_DecodeImg,DependIndexNumber,DependIndex);

    DependIndexNumber = 3;
    DependIndex[0] = SIMGLIBCLASS_OBJECT_DEPENDINDEX;
    DependIndex[1] = SIMGLIBCLASS_DECODEIMG_FUNCRETURN_DEPENDINDEX;
    DependIndex[2] = SIMGLIBCLASS_DECODEIMG_FUNCPARAM_DEPENDINDEX;
    pSRP -> RegisterObjectFunction( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,VSFUNCID_SImgLibClass_DecodeImg,(void *)SImgLibClass_DecodeImg,DependIndexNumber,DependIndex);

    DependIndexNumber = 3;
    DependIndex[0] = SIMGLIBCLASS_OBJECT_DEPENDINDEX;
    DependIndex[1] = SIMGLIBCLASS_C_CODEBMP_FUNCRETURN_DEPENDINDEX;
    DependIndex[2] = SIMGLIBCLASS_C_CODEBMP_FUNCPARAM_DEPENDINDEX;
    pSRP -> RegisterObjectFunction( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,VSFUNCID_SImgLibClass_C_CodeBMP,(void *)SImgLibClass_C_CodeBMP,DependIndexNumber,DependIndex);

    DependIndexNumber = 3;
    DependIndex[0] = SIMGLIBCLASS_OBJECT_DEPENDINDEX;
    DependIndex[1] = SIMGLIBCLASS_CODEBMP_FUNCRETURN_DEPENDINDEX;
    DependIndex[2] = SIMGLIBCLASS_CODEBMP_FUNCPARAM_DEPENDINDEX;
    pSRP -> RegisterObjectFunction( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,VSFUNCID_SImgLibClass_CodeBMP,(void *)SImgLibClass_CodeBMP,DependIndexNumber,DependIndex);

    DependIndexNumber = 3;
    DependIndex[0] = SIMGLIBCLASS_OBJECT_DEPENDINDEX;
    DependIndex[1] = SIMGLIBCLASS_C_CODEJPG_FUNCRETURN_DEPENDINDEX;
    DependIndex[2] = SIMGLIBCLASS_C_CODEJPG_FUNCPARAM_DEPENDINDEX;
    pSRP -> RegisterObjectFunction( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,VSFUNCID_SImgLibClass_C_CodeJPG,(void *)SImgLibClass_C_CodeJPG,DependIndexNumber,DependIndex);

    DependIndexNumber = 3;
    DependIndex[0] = SIMGLIBCLASS_OBJECT_DEPENDINDEX;
    DependIndex[1] = SIMGLIBCLASS_CODEJPG_FUNCRETURN_DEPENDINDEX;
    DependIndex[2] = SIMGLIBCLASS_CODEJPG_FUNCPARAM_DEPENDINDEX;
    pSRP -> RegisterObjectFunction( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,VSFUNCID_SImgLibClass_CodeJPG,(void *)SImgLibClass_CodeJPG,DependIndexNumber,DependIndex);

    DependIndexNumber = 3;
    DependIndex[0] = SIMGLIBCLASS_OBJECT_DEPENDINDEX;
    DependIndex[1] = SIMGLIBCLASS_C_CODEPNG_FUNCRETURN_DEPENDINDEX;
    DependIndex[2] = SIMGLIBCLASS_C_CODEPNG_FUNCPARAM_DEPENDINDEX;
    pSRP -> RegisterObjectFunction( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,VSFUNCID_SImgLibClass_C_CodePNG,(void *)SImgLibClass_C_CodePNG,DependIndexNumber,DependIndex);

    DependIndexNumber = 3;
    DependIndex[0] = SIMGLIBCLASS_OBJECT_DEPENDINDEX;
    DependIndex[1] = SIMGLIBCLASS_CODEPNG_FUNCRETURN_DEPENDINDEX;
    DependIndex[2] = SIMGLIBCLASS_CODEPNG_FUNCPARAM_DEPENDINDEX;
    pSRP -> RegisterObjectFunction( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,VSFUNCID_SImgLibClass_CodePNG,(void *)SImgLibClass_CodePNG,DependIndexNumber,DependIndex);

    DependIndexNumber = 3;
    DependIndex[0] = SIMGLIBCLASS_OBJECT_DEPENDINDEX;
    DependIndex[1] = SIMGLIBCLASS_C_DECODEGIF_FUNCRETURN_DEPENDINDEX;
    DependIndex[2] = SIMGLIBCLASS_C_DECODEGIF_FUNCPARAM_DEPENDINDEX;
    pSRP -> RegisterObjectFunction( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,VSFUNCID_SImgLibClass_C_DecodeGIF,(void *)SImgLibClass_C_DecodeGIF,DependIndexNumber,DependIndex);

    DependIndexNumber = 3;
    DependIndex[0] = SIMGLIBCLASS_OBJECT_DEPENDINDEX;
    DependIndex[1] = SIMGLIBCLASS_DECODEGIF_FUNCRETURN_DEPENDINDEX;
    DependIndex[2] = SIMGLIBCLASS_DECODEGIF_FUNCPARAM_DEPENDINDEX;
    pSRP -> RegisterObjectFunction( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,VSFUNCID_SImgLibClass_DecodeGIF,(void *)SImgLibClass_DecodeGIF,DependIndexNumber,DependIndex);

    //------object message process
    pSRP -> RegisterQueryObjectInfo( VSIMPORTMODULEID_BasicModule,VSOBJID_SImgLibClass,(void *)SImgLibClass_QueryObjectInfo);

    return 0;
}

